#ifndef FILE_SE_GTime_HPP
#define FILE_SE_GTime_HPP

#include <ctime>
#include <SFML/System.hpp>
#include "System.hpp"
#include "Types.hpp"

namespace se {

///////////////////////////////////////////////////////////////////////////////
/// \brief A global time.
///
/// Regroup all "global" times, ie :
/// - Time since program launch
/// - System time
///////////////////////////////////////////////////////////////////////////////
class System::GTime{
	//
	//Member Functions
	//
		public:
			GTime();
			void Update();
			//Accesseurs
			clock_t Game_fast();
			Time_t Game_ms();
			static uint_fast32_t get_tics_s(){return 1000000;}
			double Game_s();
			static time_t System();
			~GTime();
	//
	//Attributes
	//
		protected:
			sf::Clock m_clock;
			Time_t m_lastUpdateTime;
		
};



}// </namespace se>

#endif // FILE_se_GTime_HPP
